using System;
using System.Collections.Generic;
using System.Text;
using System.Data;
using System.Data.SqlClient;

namespace Datos
{
    public class Especialidad:Coneccion
    {
        public Especialidad():base()
        {       
        }
        public List<Entidades.Especialidad> getEspecialidades()
        {
            List<Entidades.Especialidad> reto = new List<Entidades.Especialidad>();
            Entidades.Especialidad especialidad;

            SqlCommand consultaSQL = new SqlCommand("select * from especialidades", this.Conec);
            this.Conec.Open();
            SqlDataReader result = consultaSQL.ExecuteReader();

            while (result.Read())
            {
                especialidad = new Entidades.Especialidad();
                especialidad.IdEspecialidad = (int) result["id_especialidad"];
                especialidad.Descripcion = result["descripcion_especialidad"].ToString();
                reto.Add(especialidad);
            }
            this.Conec.Close();
            return reto;
            
        }
        public void insertEspecialidad(Entidades.Especialidad especialidad)
        {
            SqlCommand insert = new SqlCommand("insert into especialidades (descripcion_especialidad)values(@desc)", this.Conec);
            insert.Parameters.Add("@desc", SqlDbType.VarChar).Value = especialidad.Descripcion;
            this.Conec.Open();
            insert.ExecuteNonQuery();
            this.Conec.Close();
        }
        public void modificarEspecialidad(Entidades.Especialidad especialidad)
        {
            SqlCommand update = new SqlCommand("update especialidades set descripcion_especialidad = @desc where id_especialidad = @id",this.Conec);
            update.Parameters.Add("@id", SqlDbType.Int).Value = especialidad.IdEspecialidad;
            update.Parameters.Add("@desc", SqlDbType.VarChar).Value = especialidad.Descripcion;
            this.Conec.Open();
            update.ExecuteNonQuery();
            this.Conec.Close();            
        }
        public void deleteEspecialidad(Entidades.Especialidad especialidad)
        {
            SqlCommand delete = new SqlCommand("delete from especialidades where id_especialidad = @id", this.Conec);
            delete.Parameters.Add("@id", SqlDbType.Int).Value = especialidad.IdEspecialidad;
            this.Conec.Open();
            delete.ExecuteNonQuery();
            this.Conec.Close();
        }
    }
}
